草庐IT

Java TLS-PSK 套接字

全部标签

sockets - 繁忙的 TCP 套接字是否需要 TCP Keepalive?

在此介绍文章中:http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html声明TCPkeepalive的原因是:防止因网络不活动而断开连接检测死亡节点所以在我的应用程序中,有一个繁忙的TCP套接字。数据包经常在两个对等点之间来回发送-因此有大量数据包设置了ACK标志。应用程序协议(protocol)使用其他方式进行死对等检测。对于上述情况,TCPkeepalive是否仍然是必要的? 最佳答案 没有。TCPkeepalive实际上是一个0字节长的tcp数据包。如果您可以确定您的应用程

python - 应用程序之间通过本地 TCP/IP 套接字进行通信

我正在开发一个相当复杂的应用程序,我将直接进行设置,以便解释工作流程。客户端连接到中央服务器(监控、管理和维护)使用TwistedFramework构建的本地HTTP服务器(提供1个配置Web界面、1个设备管理界面和1个操作界面)用于从中央服务器或http服务器(打印、上传等)在主机上执行各种命令的服务器未确认GUI应用程序替换操作界面我正在考虑在进程和客户端之间建立一个TCP/IP通信(可能2和3将是服务器/客户端混合体,以便实现轮询效果并对数据进行操作)我的问题是:这是应用之间通信的最佳方式吗?应用程序的每个实例将仅由单个用户使用,那么如果没有应用程序读取/写入大数据,只有命令和元

c# - 套接字在 X 消息后停止接收

我有一个.NETSocket监听计算机上的所有TCP请求,并将它们聚合为HTTP请求(如果可能)。我有以下问题-当我访问一个站点(例如-stackoverflow.com)时,我在WireShark中看到从该站点的主机收到了X(比方说-12)个TCP数据包。但是在我的代码中,Socket只是在结束前停止接收消息(在10条消息之后)我不知道如何解决这个问题,我希望这是在他的定义中限制了套接字这是我的代码:publicvoidStartCapturing(){try{_chosenOutgoingAddress=UserChoosesIpCtrl();_socket=newSocket(A

计算 linux 机器上非空 SNDBUF 的 tcp 套接字总数

Linux服务器上的C程序有没有办法计算具有非空SNDBUF的tcp套接字总数,即非空管道,或者换句话说,当数据传输正在进行时。显然,这必须在“实例”中计算出来……这个数字的近似值就可以了。谢谢。 最佳答案 /proc/net/tcp文件包含所有打开的TCP套接字的列表,并显示发送和接收队列。查找有关此文件格式的官方文档issomewhattricky,但幸运的是它有点不言自明。 关于计算linux机器上非空SNDBUF的tcp套接字总数,我们在StackOverflow上找到一个类似的

c# - 如何在单个 ASP.NET 页面中监听套接字

我正在使用TCPSocekts和C#开发客户端-服务器应用程序。我需要将消息从控制台应用程序发送到ASP页面。我可以使用OnLoad事件从ASP页面进行连接,有时在PageLoad事件中我只能收到几条消息。我有两个问题:1、如何持续监听服务器socket并接收消息?2.如何知道ASP.NET页面何时(由用户)关闭以断开与服务器的连接?服务器控制台应用程序:staticvoidStartServer(){serverSocket=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);IPEndPo

python - 检查套接字端口是否可用

情况:我有一个应用程序,它有一个TCP服务器(基于socketserver),我想测试它的功能。我为自己创建了一个测试mixin,我在每个测试用例中都使用它:classAppProcessManagingMixin:_used_tcp_ports=set()defstart_my_app(self):port=self._take_tcp_port()prepare_config_with_given_tcp_port(port)#usepreparedconfigbysubprocessbelowPopen([python_executable_path,my_app_name,..

sockets - 游戏服务器 TCP 网络套接字 - 公平性

我正在为回合制游戏编写游戏服务器。一个标准是游戏需要对所有玩家尽可能公平。到目前为止它是这样工作的:每个客户端都有一个TCP连接。(如果相关,连接通过WebSockets打开)在运行时,通过epoll持续检查传入的套接字消息。遍历准备好读取套接字的客户端:阅读来自客户的所有消息。更新每条消息的内部游戏状态。将传出消息排队到受影响的客户端。在每个“窗口”结束时(转):遍历客户端并将所有排队的传出消息写入它们的套接字我对公平的关注提出了以下问题:我向客户发送消息的顺序重要吗?在所有套接字上调用write()对我的程序来说只需要几分之一秒,但是如果我对客户端列表进行排序,在底层操作系统或网络

c# - tcp 监听器中的套接字异常

我试图运行这段代码:listener=newTcpListener(IPAddress.Any,port:80);listener.Start();socket=listener.AcceptSocket();但它抛出以下异常:试图以访问权限禁止的方式访问套接字可能是什么原因? 最佳答案 如果您不是管理员,可能会禁止使用低于1024的端口。改用8080之类的端口。另见Whichportcaniuseformysocket? 关于c#-tcp监听器中的套接字异常,我们在StackOverf

python - 如何检查是否所有数据都通过 Python 中的 TCP 套接字接收到

我正在尝试使用Python作为编程语言从TCP连接(仅限客户端)获取数据,但是,我可以看到所有数据都不是一次接收到的,而是在接收过程中被截断了……我可以在论坛上看到TCP没有以正确的顺序发送数据(有点随机),链接:Pythonsocketreceive-incomingpacketsalwayshaveadifferentsize),我错了吗?我的问题是,是否有办法确保我正确接收到所有数据?在此先感谢您的帮助和回复,PS:我已经增加了socket.recv()的缓冲区大小,但仍然面临同样的问题......而且我只在CentOS下工作编辑:(无法回答我自己的问题:(在这个论坛上还是初学者

c - 使用 TCP/IP : recv() blocks 的套接字编程

我正在开发一个简单的客户端/服务器项目,它将一大块数据从客户端移动到服务器。我使用TCP/IP。服务器设置监听套接字,客户端连接。首先传输一个短的16字节“header”,其中包含一些信息,包括之后要传输的数据量。然后传输大块(大约2MB),即send(socketDesc,(void*)myBuffer,bigChunkSize,0);和recv(socketDescPeer,(void*)myBuffer,bigChunkSize,0)首先,我使用winsock2在Windows下实现了客户端,它可以正常工作。我现在尝试将此实现移植到linux,在这种情况下,服务器端永远不会从re